//
//  VodPlayer.h
//  VodSdk
//
//  Created by gs_mac_fjb on 14-10-31.
//  Copyright (c) 2014年 gensee. All rights reserved.
//

#import <Foundation/Foundation.h>
#import <UIKit/UIKit.h>
#import "VodGLView.h"
@class VodSdk,downItem;
@protocol VodPlayDelegate;

@interface VodPlayer : NSObject
@property(nonatomic,assign)id<VodPlayDelegate> delegate;
@property(nonatomic,strong)VodGLView *mVideoView;
@property(nonatomic,strong)UIImageView *msDocView;
#pragma mark - play
/**
 * 设置播放参数
 * @param carriedViewCtl 视频和文档 加载页面
 * @param vFrame 展示的视频 frame
 * @param dFrame 展示的文档 frame
 * @param downloadid 点播的标示id
 * @param pdelegate 点播的播放代理
 */

- (id)initPlay:(UIViewController*)carriedViewCtl
  videoViewFrame:(CGRect)vFrame
    docViewFrame:(CGRect)dFrame
        downitem:(downItem*)ditem
    playDelegate:(id<VodPlayDelegate>)pdelegate;

/**
 * 播放
 */
- (void)OfflinePlay;

/**
 * 播放
 */
- (void)OnlinePlay;

/**
 * 暂停
 */
- (void)pause;

/**
 *  恢复
 */
- (void)resume;


/**
 *  停止
 */
- (void)stop;

/**
 *  进度
 */
- (int)seekTo:(int)position;

/**
 *  设置视频frame
 */
- (void)setVideoFrame:(CGRect)frame;


/**
 *  在视频窗口添加控件
 */
- (void)addSubViewOnVideoView:(id)subView;


/**
 * 获取问答列表和聊天列表
 */
- (void)getChatAndQalistAction;

@property (nonatomic, assign) BOOL videoEnable;

@end

@protocol VodPlayDelegate <NSObject>

- (void) onInit:(int) result haveVideo:(BOOL)haveVideo duration:(int)duration docInfos:(NSDictionary*)docInfos;

/**
 * 播放完成停止通知，
 */
- (void) onStop;
/**
 * 进度通知
 * @param position 当前播放进度
 */
- (void) onPosition:(int) position;

/**
 * 文档信息通知
 * @param position 当前播放进度，如果app需要显示相关文档标题，需要用positton去匹配onInit 返回的docInfos
 */
- (void) onPage:(int) position;

/**
 * 任意位置定位播放响应
 * @param position 进度变化，快进，快退，拖动等动作后开始播放的进度
 */
- (void) onSeek:(int) position ;

/**
 * 音频电频值
 * @param level 电频大小
 */
- (void) onAudioLevel:(int) level;

/**
 * 缓存通知
 * @param bBeginBuffer ture: 缓存结束  false:缓存开始
 */
- (void) OnBuffer:(BOOL)bBeginBuffer;


/*
 *获取聊天列表
 *@chatList   列表数据 (sender: 发送者  text : 聊天内容   time： 聊天时间)
 *
 */
- (void)vodRecChatList:(NSArray*)chatList;

/*
 *获取问题列表
 *@qaList   列表数据 （answer：回答内容 ; answerowner：回答者 ; id：问题id ;qaanswertimestamp:问题回答时间 ;question : 问题内容  ，questionowner:提问者 questiontimestamp：提问时间）
 *
 */
- (void)vodRecQaList:(NSArray*)qaList;


@end

